package com.kaishengit.service;

import java.util.List;

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.kaishengit.entity.Linkmanen;
import com.kaishengit.pojo.Linkman;
import com.kaishengit.pojo.Linkrecord;
import com.kaishengit.pojo.Project;
import com.kaishengit.util.CreateTime;
import com.kaishengit.util.MyUUID;

@Service
@Transactional
public class LinkmanService extends BaseService {

	public Linkman findById(String id) {
		return getLinkmanDao().findById(id);
	}

	public List<Linkman> findAll(Project project) {
		return getLinkmanDao().findAllByPro(project);
	}

	public void save(Linkman linkman, Project project) {
		linkman.setId(MyUUID.createUUID().toString());
		linkman.setCreatetime(CreateTime.createTime());
		linkman.setProject(project);

		getLinkmanDao().save(linkman);
	}

	public void update(Linkman linkman, String id) {
		Linkman lm = getLinkmanDao().findById(id);
		lm.setAddress(linkman.getAddress());
		lm.setCompany(linkman.getCompany());
		lm.setContent(linkman.getContent());
		lm.setEmail(linkman.getEmail());
		lm.setMoblie(linkman.getMoblie());
		lm.setName(linkman.getName());
		lm.setTel(linkman.getTel());
		lm.setWebsite(linkman.getWebsite());
		lm.setWeibo(linkman.getWeibo());

		getLinkmanDao().update(lm);
	}

	public void delLinkman(Linkman linkman) {
		for (Linkrecord record : getLinkrecordDao().findByLinkMan(linkman)) {
			getLinkrecordDao().delrecord(record.getId());
		}
		getLinkmanDao().dellinkman(linkman.getId());
	}

	public Linkmanen findAjaxById(String id) {
		Linkman linkman = getLinkmanDao().findById(id);
		Linkmanen lkn = new Linkmanen();
		
		lkn.setId(linkman.getId());
		lkn.setAddress(linkman.getAddress());
		lkn.setCompany(linkman.getCompany());
		lkn.setContent(linkman.getContent());
		lkn.setCreatetime(linkman.getCreatetime());
		lkn.setEmail(linkman.getEmail());
		lkn.setMoblie(linkman.getMoblie());
		lkn.setName(linkman.getName());
		lkn.setTel(linkman.getTel());
		lkn.setWebsite(linkman.getWebsite());
		lkn.setWeibo(linkman.getWeibo());
		
		return lkn;
	}
}
